home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 12 / Cream of the Crop 12 (Part II) / Cream of the Crop 12 (Part II).iso / OS2 / VD08BIN.ZIP / usr / include / pm / container.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-13  |  3.2 KB  |  145 lines

  1. #ifndef _CONTAINER_H_
  2. #define _CONTAINER_H_
  3.  
  4. #ifndef _FACTORYWINDOW_H_
  5. #include <pm/FactoryWindow.h>
  6. #endif
  7.  
  8. #ifndef _OS2TYPES_H_
  9. #include <pm/OS2Types.h>
  10. #endif
  11.  
  12. @interface Container : FactoryWindow <Archiving>
  13. {
  14.   ULONG              createFlags;
  15.   CONTAINER_MINIREC *recordBuffer;
  16.   FIELDINFO         *columnBuffer;
  17. }
  18.  
  19. /*
  20.  * Initializing an object
  21.  */
  22. - initWithId: (ULONG) anId andFlags: (ULONG) flags in: (Window *) parent;
  23. - addColumn: (char *) aTitle;
  24.  
  25. /*
  26.  * Inserting data
  27.  */
  28. - insertObject: anObject;
  29. - insertObject: anObject withTitle: (char *) aTitle;
  30. - insertObject: anObject withTitle: (char *) aTitle andIcon: (ULONG) anIcon;
  31.  
  32. -insertObjectList: aList;
  33. -insertObjectList: aList withTitles: titleList;
  34. -insertObjectList: aList withTitles: titleList andIcon: (ULONG) anIcon;
  35.  
  36. - insertObject: anObject parent: parentObject;
  37. - insertObject: anObject withTitle: (char *) aTitle parent: parentObject;
  38. - insertObject: anObject withTitle: (char *) aTitle andIcon: (ULONG) anIcon
  39.         parent: parentObject;
  40.  
  41. /*
  42.  * Set look & feel of object
  43.  */
  44. - arrange;
  45. - iconView: sender;
  46. - nameView: sender;
  47. - textView: sender;
  48. - treeView: sender;
  49. - detailView: sender;
  50.  
  51. /*
  52.  * Query contents
  53.  */
  54. - (ULONG) records;
  55. - object;
  56.  
  57. - (CONTAINER_MINIREC *) findRecord: anObject;
  58. - (CONTAINER_MINIREC *) firstRecord;
  59. - (CONTAINER_MINIREC *) lastRecord;
  60. - (CONTAINER_MINIREC *) nextRecord;
  61. - (CONTAINER_MINIREC *) previousRecord;
  62. - (CONTAINER_MINIREC *) childRecord;
  63. - (CONTAINER_MINIREC *) parentRecord;
  64. - (CONTAINER_MINIREC *) firstSelected;
  65. - (CONTAINER_MINIREC *) nextSelected;
  66. - (BOOL) recordIsSelected;
  67.  
  68. - objectWithTitle: (char *) aTitle;
  69.  
  70. - invalidateRecord;
  71. - invalidateSelectedRecords;
  72.  
  73. - hideRecord : sender;
  74. - hideSelectedRecords : sender;
  75. - hideNotSelectedRecords : sender;
  76. - showRecord : sender;
  77. - showAllRecords : sender;
  78. - (BOOL) recordIsHidden;
  79.  
  80. -removeAllColumns: sender;
  81. -removeAllRecords: sender;
  82. -removeSelectedRecords: sender;
  83.  
  84. /*
  85.  * Query column information
  86.  */
  87. - (ULONG) columns;
  88.  
  89. - (FIELDINFO *) firstColumn;
  90. - (FIELDINFO *) lastColumn;
  91. - (FIELDINFO *) nextColumn;
  92. - (FIELDINFO *) previousColumn;
  93.  
  94. - (char *) columnTitle;
  95. - (ULONG) columnTitleAttributes;
  96. - (ULONG) columnDataAttributes;
  97.  
  98. - hideColumn : sender;
  99. - showColumn : sender;
  100. - showAllColumns : sender;
  101. - (BOOL) columnIsHidden;
  102.  
  103. - invalidateColumns;
  104. - setColumnTitleAttributes: (ULONG) attr;
  105. - setColumnDataAttributes: (ULONG) attr;
  106.  
  107. /*
  108.  * selecting and deselecting
  109.  */
  110. - select;
  111. - deselect;
  112. - selectAll: sender;
  113. - deselectAll: sender;
  114.  
  115. /*
  116.  * Sorting the records
  117.  */
  118. - sort: (ULONG) column;
  119. - sortByTitleWithCase: sender;
  120. - sortByTitleWithoutCase: sender;
  121.  
  122. /*
  123.  * Archiving the object
  124.  */
  125. - read: (TypedStream *) aStream;
  126. - write: (TypedStream *) aStream;
  127. - awake;
  128.  
  129. - createInPMWindow: (HWND) hwnd;
  130.  
  131. - (MRESULT) handleMessage: (ULONG) msg 
  132.                withParams: (MPARAM) mp1 and: (MPARAM) mp2;
  133.  
  134. @end
  135.  
  136. SHORT compareColumn (CONTAINER_MINIREC *record1,
  137.              CONTAINER_MINIREC *record2,
  138.              ULONG column);
  139.  
  140. SHORT compareByTitle (CONTAINER_MINIREC *record1,
  141.               CONTAINER_MINIREC *record2,
  142.               ULONG caseSens);
  143.  
  144. #endif
  145.